.\" Copyright 1993 Rickard E. Faith (faith@cs.unc.edu)
.\" May be distributed under the GNU General Public License
.TH IPCS "1" "July 2014" "util-linux" "User Commands"
.SH NAME
ipcs \- show information on IPC facilities
.SH SYNOPSIS
.B ipcs
[options]
.SH DESCRIPTION
.B ipcs
shows information on System V inter-process communication facilities.
By default it shows information about all three resources:
shared memory segments, message queues, and semaphore arrays.
.SH OPTIONS
.TP
\fB\-i\fR, \fB\-\-id\fR \fIid\fR
Show full details on just the one resource element identified by
.IR id .
This option needs to be combined with one of the three resource options:
.BR \-m ,
.BR \-q " or"
.BR \-s .
.TP
\fB\-h\fR, \fB\-\-help\fR
Display help text and exit.
.TP
\fB\-V\fR, \fB\-\-version\fR
Display version information and exit.
.SS "Resource options"
.TP
\fB\-m\fR, \fB\-\-shmems\fR
Write information about active shared memory segments.
.TP
\fB\-q\fR, \fB\-\-queues\fR
Write information about active message queues.
.TP
\fB\-s\fR, \fB\-\-semaphores\fR
Write information about active semaphore sets.
.TP
\fB\-a\fR, \fB\-\-all\fR
Write information about all three resources (default).
.SS "Output formats"
Of these options only one takes effect: the last one specified.
.TP
\fB\-c\fR, \fB\-\-creator\fR
Show creator and owner.
.TP
\fB\-l\fR, \fB\-\-limits\fR
Show resource limits.
.TP
\fB\-p\fR, \fB\-\-pid\fR
Show PIDs of creator and last operator.
.TP
\fB\-t\fR, \fB\-\-time\fR
Write time information.  The time of the last control operation that changed
the access permissions for all facilities, the time of the last
.BR msgsnd (2)
and
.BR msgrcv (2)
operations on message queues, the time of the last
.BR shmat (2)
and
.BR shmdt (2)
operations on shared memory, and the time of the last
.BR semop (2)
operation on semaphores.
.TP
\fB\-u\fR, \fB\-\-summary\fR
Show status summary.
.SS "Representation"
These affect only the \fB\-l\fR (\fB\-\-limits\fR) option.
.TP
\fB\-b\fR, \fB\-\-bytes\fR
Print sizes in bytes.
.TP
.B \-\-human
Print sizes in human-readable format.
.SH CONFORMING TO
The Linux ipcs utility is not fully compatible to the POSIX ipcs utility.
The Linux version does not support the POSIX
.BR \-a ,
.B \-b
and
.B \-o
options, but does support the
.B \-l
and
.B \-u
options not defined by POSIX.  A portable application shall not use the
.BR \-a ,
.BR \-b ,
.BR \-o ,
.BR \-l ,
and
.B \-u
options.
.SH NOTES
The current implementation of
.B ipcs
obtains information about available IPC resources by parsing the files in
.IR /proc/sysvipc .
Before util-linux version v2.23, an alternate mechanism was used: the
.B IPC_STAT
command of
.BR msgctl (2),
.BR semctl (2),
and
.BR shmctl (2).
This mechanism is also used in later util-linux versions in the case where
.I /proc
is unavailable.
A limitation of the
.B IPC_STAT
mechanism is that it can only be used to retrieve information about
IPC resources for which the user has read permission.
.SH AUTHORS
.UR balasub@cis.ohio-state.edu
Krishna Balasubramanian
.UE
.SH SEE ALSO
.BR ipcmk (1),
.BR ipcrm (1),
.BR msgrcv (2),
.BR msgsnd (2),
.BR semget (2),
.BR semop (2),
.BR shmat (2),
.BR shmdt (2),
.BR shmget (2),
.BR sysvipc (7)
.SH AVAILABILITY
The ipcs command is part of the util-linux package and is available from
.UR https://\:www.kernel.org\:/pub\:/linux\:/utils\:/util-linux/
Linux Kernel Archive
.UE .
